
ANDROID_BUILD_CMD = gomobile bind -target=android -o ./dist/emguard.aar -androidapi=30 -ldflags="-s -w" ./androidJniApi/

# 构建安卓环境下的aar文件
.PHONY: build-andriod
build-andriod:android-build-check
	@echo "🔄 正在构建 Android AAR..."
	@echo "🔄 执行: $(ANDROID_BUILD_CMD)"
	@$(ANDROID_BUILD_CMD)
	@echo "✅ Android AAR 构建完成"

# 运行linux环境下的emguard-go,用目录下的config.json文件来运行linux环境下的emguard-go
.PHONY: run
run:
	go run .

# 检查构建安卓aar的环境是否正常
.PHONY: android-build-check
android-build-check:
	@echo "🔄 检查构建环境..."
	@# 检查 Go 是否安装
	@if ! command -v go >/dev/null 2>&1; then \
		echo "❌ Go 未安装，请先安装 Go"; \
		exit 1; \
	else \
		echo "🟢 Go 已安装: `go version`"; \
	fi
	
	@# 检查 gomobile 是否安装
	@if ! command -v gomobile >/dev/null 2>&1; then \
		echo "❌ gomobile 未安装，请执行: go install golang.org/x/mobile/cmd/gomobile@latest"; \
		exit 1; \
	else \
		echo "🟢 gomobile 已安装: `gomobile version`"; \
	fi
	
	@# 检查 Java 是否安装
	@if ! command -v java >/dev/null 2>&1; then \
		echo "❌ Java 未安装，请安装 JDK"; \
		exit 1; \
	else \
		echo "🟢 Java 已安装: `java -version 2>&1 | head -n 1`"; \
	fi
	
	@# 检查必要的环境变量
	@if [ -z "$$ANDROID_NDK_HOME" ]; then \
		echo "❌ ANDROID_NDK_HOME 环境变量未设置"; \
		exit 1; \
	else \
		echo "🟢 ANDROID_NDK_HOME 已设置: $$ANDROID_NDK_HOME"; \
	fi
	
	@if [ -z "$$ANDROID_HOME" ]; then \
		echo "❌ ANDROID_HOME 环境变量未设置"; \
		exit 1; \
	else \
		echo "🟢 ANDROID_HOME 已设置: $$ANDROID_HOME"; \
	fi
	
	@if [ -z "$$JAVA_HOME" ]; then \
		echo "❌ JAVA_HOME 环境变量未设置"; \
		exit 1; \
	else \
		echo "🟢 JAVA_HOME 已设置: $$JAVA_HOME"; \
	fi
	
	@echo "✅ 所有检查通过！如果构建失败，请检查是否是gomobile版本和ndk、android-sdk版本不兼容"





